## Controller Python Script "salvar_aditivo"
##bind container=container
##bind context=context
##bind namespace=
##bind script=script
##bind state=state
##bind subpath=traverse_subpath
##parameters=
##title=Salvar Aditivo
##

request = context.REQUEST
instrumento = context.aq_parent
data_aditivo = DateTime(context.getData_aditivo())

if instrumento.portal_type == 'ChamadaPublica':
    data_vigencia = DateTime(instrumento.getData_vigencia())
    if data_aditivo < data_vigencia:
        state.setError('data_aditivo', 'Por favor corrija a data do aditivo, ela está menor que a data de vigência da Chamada Pública. A data de vigência é %s' % (data_vigencia))

if instrumento.portal_type == 'CartaConvite':
    data_vigencia = DateTime(instrumento.getData_vigencia())
    if data_aditivo < data_vigencia:
        state.setError('data_aditivo', 'Por favor corrija a data do aditivo, ela está menor que a data de vigência da Carta Convite. A data de vigencia é %s' % (data_vigencia))

if instrumento.portal_type == 'Encomenda':
    data_vigencia = DateTime(instrumento.getData_vigencia())
    if data_aditivo < data_vigencia:
        state.setError('data_aditivo', 'Por favor corrija a data do aditivo, ela está menor que a data de vigência da Encomenda. A data de vigência é %s' % (data_vigencia))

if state.getErrors():
    return state.set(status='failure', portal_status_message='Por favor corrija os erros indicados.')

else:
    return state.set(portal_status_message='Os dados da atividade foram salvos.')
